lexer grammar AnalexLexer;

options {
  language = Java;
}

@header {
    package practica6;
}


@members {
     private ArrayList<RecognitionException> errors = new ArrayList<RecognitionException>();
     public ArrayList<RecognitionException> getErrors() {
        return errors;
     }
     @Override
     public void reportError (RecognitionException e) {
        String msg = getErrorMessage(e, getTokenNames());
        System.err.println(msg);
        errors.add(e);
     }
}



BLANCO : (' '|'\t'|'\r\n') {skip();};
fragment DIGITO : '0'..'9';
NUMERO : (DIGITO)+('.'(DIGITO)+)?;
MAS: '+';
MENOS: '-';
MULT: '*';
DIV: '/';
PARENTESIS_A: '(';
PARENTESIS_C: ')';
SEPARADOR : ';' ;